package cn.wei.sdd.core.service;

import cn.wei.sdd.core.pojo.entity.User;
import cn.wei.sdd.core.pojo.query.UserQuery;
import cn.wei.sdd.core.pojo.vo.*;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.math.BigDecimal;

/**
 * <p>
 * 用户信息表 服务类
 * </p>
 *
 * @author Wei
 * @since 2021-09-22
 */
public interface UserService extends IService<User> {

    Boolean selectUserByOpenid(String openid);

    void addWxUser(String openid);

    String getToken(String openid);




    UserVO getInfo(Long userId);

    void updateInfo(UserVO userVo, Long userId);


    IPage<User> listPage(Page<User> pageParam, UserQuery userQuery);
    void lock(Long id, Integer status);

    Boolean checkMobile(String mobile);

    void register(RegisterVO registerVO);

    BigDecimal getPercentByUserId(Long userId);

    UserIndexInfoVO getUserIndexInfo(Integer userType, Long userId);

    UserInfoVO recyclerLogin(LoginVO loginVO);

    void bingMobile(String mobile, Long userId, String code);

    String getMobileByUserid(Long userId);

    AdminHomeVO getAdminHomeInfo();

}
